package com.xayy.mgt.service;

import com.xayy.mgt.model.vo.GenerateTheoryDataVo;
import com.xayy.mgt.model.xinwangmodel.HealthEntity;
import com.xayy.mgt.model.xinwangmodel.SateLinkData;
import org.springframework.scheduling.annotation.Async;

import java.util.List;
import java.util.Map;

/**
 * 生成理论数据异步请求
 * @author plq
 */
public interface GenerateTheoryDataAsyncService {


    /**
     * 第三方文件上传异步请求
     * @param build 文件对象
     */
    @Async
    void generateTheoryData(GenerateTheoryDataVo build);

    /**
     * 获取管理员token
     * @return Map<String,Object>
     */
    Map<String,Object> getAdminToken();

    /**
     * 调用第三方上传文件接口
     * @param filePath 上传到的目录
     * @param localFilePath 本地文件目录
     * @return string
     */
    String requestUploadFile(String filePath, String localFilePath);

    /**
     * 异步健康评估
     * @param healthEntity 评估参数
     * @param adminToken token
     */
    @Async
    void healthAsyncAssess(HealthEntity healthEntity, String adminToken, List<SateLinkData> data);
}
